﻿// 3479. 数字反转.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;
/*
https://www.acwing.com/problem/content/3482/
12翻一下是 21，34翻一下是 43，12+34 是 46，46 翻一下是 64
，现在又任意两个正整数，问他们两个数反转的和是否等于两个数的和的反转。

输入格式
输入包含多组测试数据。

每组数据占一行，包含两个整数 a和 b。

输出格式
每组数据输出一行一个结果，如果 a+b的反转的和等于 a+b的和的反转，
则输出 a+b，否则输出 NO。

数据范围
1≤a,b≤10000
输入样例：
12 34
99 1
输出样例：
46
NO
*/

int rev(int x) {
    vector<int> v;
    while (x) {
        v.push_back(x % 10);
        x /= 10;
    }

    //reverse(v.begin(), v.end());

    int res=0;
    for (int i = 0; i < v.size(); i++) {
        res = res * 10 + v[i];
    }

    return res;
}

int main()
{
    int a, b;
    while (cin >> a >> b) {
        if (rev(a) + rev(b) == rev(a + b) ) {
            cout << (a + b) << endl;
        }
        else {
            cout << "NO" << endl;
        }
    }
    return 0;
}
 